package com.study.hot.jetpack.lifecycle.use_in_mvp

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.study.hot.databinding.ActivityLifeMvpBinding

/**
 * <pre>
 *     author : slx
 *     time   : 2021/02/24
 *     desc   :
 * </pre>
 */

/*
1.所有方法调用操作都由组件本身管理：Presenter类自动感知生命周期，如果需要在其他的Activity/Fragment也使用这个Presenter，只需添加其为观察者即可。
2.让各个组件存储自己的逻辑，减轻Activity/Fragment中代码，更易于管理；
* */
class LifeMvpActivity : AppCompatActivity(), IView {

    lateinit var binding: ActivityLifeMvpBinding

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityLifeMvpBinding.inflate(layoutInflater)
        setContentView(binding.root)
        lifecycle.addObserver(LifePresenter(this))
    }

    override fun show() {
        binding.tvMvp.text = "show"
    }

    override fun hide() {
        binding.tvMvp.text = "hide"
    }
}